数据验证示例

若要获取示例和示例的安装说明,请参见下文:

  • 在 Visual Studio“帮助”菜单上单击“示例”

    有关更多信息,请参见定位示例文件

  • 示例的最新版本和完整列表可以从 Visual Studio 2008 示例网站获取。

  • 还可以在计算机的硬盘上查找示例。默认情况下,示例和自述文件将复制到 \Program Files\Visual Studio 9\Samples\ 下的一个文件夹中。对于 Visual Studio 速成版,所有示例都位于 Internet 上。

运行此示例

  • 按 F5。

要求

此示例需要 Northwind 示例数据库。有关更多信息,请参见如何:安装用于示例的数据库组件并进行疑难解答

演示

该示例演示 Visual Studio 设计器中的数据验证功能。两个任意虚构的规则用于验证数据。使用“数据集设计器”添加代码。双击列名创建列更改事件。双击字段列表创建行更改事件。在那些事件处理程序中,添加了代码以验证建议值:

Private Sub EmployeeDataTable_BirthDateChanging( _
    ByVal sender As EmployeeDataTable, _
    ByVal e As BirthDateChangeEventArg) Handles Me.BirthDateChanging

    Dim minimumAgeDate As New DateTime(DateTime.Now().Year - 18, _
        DateTime.Now().Month, DateTime.Now().Day)
    If e.ProposedValue > minimumAgeDate Then
        e.Row.SetColumnError(e.BirthDateColumn, _
            "Employees must be at least 18 years of age.")
    Else
        e.Row.SetColumnError(e.BirthDateColumn, "")
    End If
End Sub

Private Sub EmployeesDataTable_EmployeesRowChanging( _
    ByVal sender As System.Object, ByVal e As _
    EmployeesRowChangeEvent) Handles Me.EmployeesRowChanging
    If (e.Row.BirthDate = e.Row.HireDate) Then
        e.Row.RowError = e.Row.RowError & _
            "Birth date and hire date are the same."
    Else
        e.Row.ClearErrors()
    End If
End Sub

定义行和列错误时,DataGridView 控件会显示警告图标。对于行错误,图标显示在行的左侧。对于列错误,图标显示在单元格中。